(a) Field of the Invention
The present invention relates to a character processing apparatus for outputting character data as in a liquid crystal display unit, a CRT display unit, or a printing unit (e.g., a laser beam printer, an ink-jet printer, and a thermal printer).
(b) Related Background Art
In a conventional character processing apparatus, assume that characters are to be visually output and a shift amount of each character (the total horizontal space allotted to the character) is equal to a full-size fixed pitch (d1). In this case, when characters having different character widths (C1 to C3) are adjacent to each other, as shown in FIG. 7, the character intervals are not equal to each other to which result in poor appearance. In one method proposed to solve the above problem, the width D.sub.i allotted to the ith character includes a predetermined value m added to the start and end of each character width C.sub.i, respectively, thereby obtaining equal character shift amounts, as shown in FIG. 8. Referring to FIG. 8, when the character widths of characters " " (/ku/), " " (/u/), and " " (/ki/) are given as C1, C2, and C3, respectively, their shift amounts D1, D2, and D3 are changed to (C1+2m), (C2+2m), and (C3+2m). As compared with the case of FIG. 7, more natural character intervals are obtained. Even if the character shift amounts are determined as described above, however, the character intervals may be unnatural, depending on the particular combination of characters involved.
FIG. 9 shows an example wherein a predetermined value n is added to the start and to the end of each character width of each of the characters " " (/a/), " " (/i/), " " (/no/), and " " (/ji/), and the resultant characters are output in the same manner as in FIG. 8. As shown in FIG. 9, unnatural spaces are typically formed between the characters, depending on the combination of characters. In order to solve this problem, as shown in FIG. 10, character box 91 is moved so as to overlap with box 90 by a distance l1, character box 92 is moved to overlap with box 91 by a distance #2, and box 93 is not moved, thus performing kerning. Kerning is performed manually such that a character shift amount is adjusted character by character. Alternatively, kerning is performed automatically such that combinations (kerning pairs) of all characters requiring kerning and pair shift amount adjustment data are prepared in advance.
This, however, poses the following problems.
(1) When manual kerning is performed, significant operator skill required, and kerning mainly depends on individual experience.
(2) Manual kerning is not efficient since each character of document data must be checked.
(3) When automatic kerning is performed for text written in a language using a large number of characters, as in the Japanese language, a way large number of kerning pairs must be prepared. Therefore, the required capacity of the kerning table is increased, and the capacity required for a memory for storing the kerning table is inevitably increased.
(4) Since the kerning table stores data in units of types, kerning of a combination of characters having different types cannot be performed.
(5) User's definition characters and the like cannot be kerned.